草庐IT

java - 从cli启动并杀死hadoop任务

全部标签

ruby-on-rails - 我如何在 rake 任务中强制使用 RAILS_ENV?

我有这个小佣金任务:namespace:dbdonamespace:testdotask:resetdoENV['RAILS_ENV']="test"Rake::Task['db:drop'].invokeRake::Task['db:create'].invokeRake::Task['db:migrate'].invokeendendend现在,当我执行时,它将忽略我尝试硬编码的RAILS_ENV。我如何使这个任务按预期工作 最佳答案 对于这个特定的任务,您只需要更改数据库连接,正如Adam指出的那样,您可以这样做:namesp

ruby - 如何明确地使 ruby​​ rake 中的任务失败?

假设我有一个这样的rakefile:file'file1'=>some_dependenciesdosh'externaltoolIdonothavecontrolover,whichsometimesfailtocreatethefile'???endtask:default=>'file1'doputs"everything'sOK"end现在,如果我不放置任何内容来代替???,即使外部工具无法生成文件,我也会收到OK消息。什么是通知rake的正确方法,'file1'任务失败了,它应该中止(希望呈现一个有意义的消息——比如哪个任务失败了)——我现在唯一能想到的就是在那里引发异常,但

ruby - 如何获取当前rake任务的PID?

我将收割机线放入rake任务中,以杀死一些额外生成的ruby​​任务,因为它们有时会不知何故爬上来。system"psaux|grep'namespace:taskname'|grepruby|grep-vgrep|awk'{print$2}'|xargskill-9;echo'Reapedoldnamespace:tasknameprocesses.'"我想在其中添加grep-v$PID_OF_CURRENT_TASK以确保我不会终止当前正在运行的任务。我如何获得该PID? 最佳答案 您可以使用Process.pid在Ruby中获

ruby-on-rails - 从迁移中执行 Rake 任务?

我有一个Rake任务将配置数据从文件加载到数据库中,是否有正确的ruby​​/rails方法在迁移时调用它?我的目标是同步我的团队数据库配置,无需广播然后运行任务lalaladefself.upchange_table:fis_situacao_fiscaldo|t|t.remove:mostrar_enderecot.rename:serie,:modeloendFaturamento::Cfop.destroy_all()#performrakehere!end更新我现在的工作方式和工作方式:system('rakesistema:load_datafile=faturamento

ruby - 在 Rspec 测试中运行 Rake 任务

我正在构建一个集成测试套件,我需要一个干净的数据库来处理一些逻辑。如何在我的一个测试中运行db:test:purge任务?我正在使用:ruby1.9.2、rails3.0.9、rspec2.6 最佳答案 您可以按如下方式调用Rake任务:require'rake'Rake::Task[name].invoke在这种情况下,这将导致以下代码:require'rake'Rake::Task['db:test:purge'].invoke 关于ruby-在Rspec测试中运行Rake任务,我们

ruby - 如何在 Ruby 脚本中运行 Rake 任务?

我有一个Rakefile,其中包含我通常从命令行调用的Rake任务:rakeblog:postTitle我想编写一个多次调用Rake任务的Ruby脚本,但我看到的唯一解决方案是使用``(反引号)或system进行处理。正确的做法是什么? 最佳答案 来自timocracy.com:require'rake'defcapture_stdouts=StringIO.newoldstdout=$stdout$stdout=syields.stringensure$stdout=oldstdoutendRake.application.rak

ruby - 何时使用在 Ruby 中启动子进程的每种方法

1。``反引号定义于Kernel1。a)%x{}百分比X在parse.y中定义,参见discussion2。系统()Kernel#system3。fork()Kernel#fork,Process#fork4。打开()打开管道Kernel#open4.a.IO.popen()open()相同打开管道IO#popen4.b.打开("|-")叉到管道4.c.IO.popen("-")open("|-")的行为相同fork到管道参见discussion5。Open3.popen3()需要'open3'标准库Open36。PTY.spawn()需要'pty'标准库PTY7.Shell.tran

ruby-on-rails - 在 gem 中包括 rake 任务

1)在gems中是否有一个“最佳”的抽取任务位置?我在/tasks、/lib/tasks中看到过它们,而且我看到它们写成*.rb和*.rake--不确定哪个(如果有的话)是“正确的”2)在环境中配置gem后,如何让应用程序可以使用它们? 最佳答案 在Rails3上,您可以通过Railties执行此操作。这是为我刚刚制作的gem执行此操作的代码:classBackupTask因此,您基本上创建了一个继承自Rails::Railtie的类,然后在该类中您有一个加载相关文件的rake_tasksblock。如果你想使用.rake扩展,你必

ruby-on-rails - TZInfo::DataSourceNotFound 在 Windows 上启动 Rails v4.1.0 服务器时出错

我使用RubyonRailsv4.1.0创建了一个新应用程序。尝试在Windows上启动服务器或控制台时,遇到以下错误:$railsserverBootingWEBrickRails4.1.0applicationstartingindevelopmenton....Exitingc:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/tzinfo-1.1.0/lib/tzinfo/data_source.rb:199:in`rescueincreate_default_data_source':Notimezonedatasource

ruby-on-rails - rake 任务在哪里定义?

在新创建的Rails项目(由railssomeName生成)中,可以运行一些“默认”rake任务,例如:抽取测试rake数据库:迁移等等问题是,这些任务是在哪里描述的?默认的Rakefile没有所有这些任务。此外,我检查了一些使用rspec的项目,我能够运行rakespec来运行所有测试。spec目标在哪里定义? 最佳答案 如果描述你的意思是定义,rake-W是你的friend。示例:$rake-Wdb:create=>rakedb:create/path/to/ruby/gems/1.9.1/gems/activerecord-3